﻿function pinyinOption() {
    var t = setTimeout(function () {
        $.post('testHandler.ashx?' + Math.random(), { pinyins: $("#newTag").val() }, pinyinCallback);
    }, 500);

}
function pinyinCallback(data) {
    var $resultDiv = $('<div id="resultDiv" class="pa f12 ff"></div>');
    var $resultUl = $('<ul id="resultUl"></ul>');
    var $resultLi = [];
    var currentTxt;
    $("#resultDiv").show();
    $resultUl.html("");
    if (data != "") {
        for (var i = 0; data.jsondata[i]; i++) {
            $resultLi[i] = $("<li></li>");
            $resultLi[i].html(data.jsondata[i]["xmxm"]);
            $resultUl.append($resultLi[i]);
        }

        if ($resultUl.html() == "") {
            $("#resultDiv").hide();
        }
        $resultUl.appendTo($resultDiv);
        $resultDiv.appendTo($("#tagDiv"));
        $("#resultDiv li").hover(function () {
            $(this).addClass("esultDivLiHover");
        }, function () {
            $(this).removeClass("esultDivLiHover");
        });
        $("#resultDiv").blur(function () {
            $("#resultDiv").hide();
        });
        $("#resultDiv li").click(function (event) {
            $("#newTag").val($(this).text());
            $("#resultDiv").remove();
            // $("form").submit();  
        });
        //键盘上下键控制  
        var index = -1;    //标记上下键时所处位置

        document.documentElement.onkeydown = function (e) {
            e = window.event || e;
            if (e.keyCode == 40) {  //下
                if (++index == $("#resultDiv li").length) {  //判断加一操作后index值是否超出列表数目界限  
                    index = -1;             //超出的话就将index值变为初始值  
                    $("#newTag").val(currentTxt);    //并将文本框中值设为用户用于搜索的值  
                    $("#resultDiv li").removeClass("esultDivLiHover");
                }
                else {
                    $("#newTag").val($($("#resultDiv li")[index]).text());
                    $($("#resultDiv li")[index]).siblings().removeClass("esultDivLiHover").end().addClass("esultDivLiHover");
                }
            }
            if (e.keyCode == 8) {    //退格键
                $("#resultDiv").remove();
            }
            if (e.keyCode == 38) {  //上 
                if (--index == -1) {    //判断自减一后是否已移到文本框  
                    $("#newTag").val(currentTxt);
                    $("#resultDiv li").removeClass("esultDivLiHover");
                }
                else if (index == -2) {     //判断index值是否超出列表数目界限  
                    index = $("#resultDiv li").length - 1;
                    $("#newTag").val($($("#resultDiv li")[index]).text());
                    $($("#resultDiv li")[index]).siblings().removeClass("esultDivLiHover").end().addClass("esultDivLiHover");
                }
                else {
                    $("#newTag").val($($("#resultDiv li")[index]).text());
                    $($("#resultDiv li")[index]).siblings().removeClass("esultDivLiHover").end().addClass("esultDivLiHover");
                }
            }
            if (e.keycode == 13) {

            }
        };
    }
}